本章讨论基于主机的错误检测和处理机制，主机程序可以检测和处理可能在主程序中或在设备上执行内核期间出现的错误。本章没讨论如何在编写的设备代码中表明出了问题，这是我们的有意为之。\par

SYCL显式地禁止在设备代码中使用C++异常处理机制(比如throw)，对于某些设备，通常不想牺牲性能。如果检测到设备代码中出现了错误，应该使用现有的处理异常的技术发出错误信号，例如：可以写入缓冲区，该缓冲区记录错误，或返回一些无效结果以表明发生了错误的数值计算。在这些情况下，正确的策略有非常具体的应用。\par